#ifndef MUSIC_H
#define MUSIC_H

#include<QUrl>

class Music
{
public:
    Music();

    Music(QUrl url);

    void setMusicId(const QString& musicId);
    void setMusicName(const QString& musicName);
    void setMusicSinger(const QString& musicSinger);
    void setMusicAlbumn(const QString& musicAlbumn);
    void setMusicdruation(qint64 druation);
    void setIsLike(bool isLike);
    void setIsHistory(bool isHistory);
    void setMusicUrl(QUrl musicUrl);

    QString getMusicName()const;
    QString getMusicSinger()const;
    QString getMusicAlbumn()const;
    qint64 getMusicdruation()const;
    bool getIsLike()const;
    bool getIsHistory()const;
    QUrl getMusicUrl()const;

    QString getMusicId()const;

    QString getLrcFilePath()const;

    //将歌曲属性写入到数据库中
    void InsertMusicToDB();

private:
    void parseMediaMetaMusic(); //解析的是当前这一首音乐

private:
    //为了保证每个歌曲music的唯一性 需要给音乐添加id
    QString musicId;

    //音乐名称
    QString musicName;
    //音乐作者
    QString musicSinger;
    //音乐专辑
    QString musicAlbumn;
    //持续时长 Qint64 --longlong
    qint64 duration;
    //是否收藏(喜欢)
    bool isLike;
    //是否为历史播放
    bool isHistory;
    //音乐QUrl
    QUrl musicUrl;


};

#endif // MUSIC_H
